package hb.software.service;

import java.io.Serializable;

import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

import hb.software.domain.BaseEntity;

public interface GenericManager<T extends BaseEntity<PK>, PK extends Serializable> {

	public void delete(PK id);

	public void deleteAll();

	public Iterable<T> findAll();

	public Page<T> findAll(Pageable page);

	public T findById(PK id);

	public Iterable<T> save(Iterable<T> entities);

	public T save(T entity);

	public long count();
}
